#pragma once

#include "..\\..\\Common\\DSExceptions.h"

template <typename T>
class BaseStack {
public :
	BaseStack();
	virtual ~BaseStack();
	virtual void push(T a_oData) = 0;
	virtual T pop() = 0;
	virtual bool canPush() = 0;
	virtual bool canPop() = 0;
	virtual int getDataCount() = 0;
};

template <typename T>
BaseStack<T>::BaseStack() {
}

template <typename T>
BaseStack<T>::~BaseStack() {

}